Warsztaty badawcze - praca domowa 2

LIME

Zbiór danych:

Wykorzystamy zbiór danych medycznych UCI Heart Disease, który zawiera wiek, płeć oraz wyniki badań medycznych pacjenta. Targetem jest ocena występowania wieńcowej choroby serca poprzez ocenę zwężenia naczyń wieńcowych (brak choroby - 0, choroba - 1). Zmienne kategoryczne (cp, thal oraz slope) zostały przetworzone za pomocą One-hot encoding, stąd w ramce danych pojawiły nam się zmienne z indeksami (np. thal_fd, thal_rd, thal_n).

Model:

Jako model wykorzystany zostanie Random Forest.

Tak jak widzimy powyżej, nasz zbiór zawiera 21 kolumn. Zmienne thal, slope oraz cp zostały zakodowane za pomocą One-hot encoding.

Część 1: Predykcja i jej dekompozycja dla wybranej obserwacji.

Sprawdźmy jak działa nasz explainer w praktyce. Wybierzmy pierwszą obserwację w zbiorze danych oraz wyliczmy dla niej predykcję modelu.

Charakterystyka wybranego pacjenta (kilka wyróżniających się zmiennych):

Po przyjrzeniu się danym możemy przypuszczać, że mężczyzna ten posiada chorobę wieńcową. Wartość targetu = 1 potwierdza nasze przypuszczenia.

Predykcja modelu natomiast wynosi około 0.758.

Sprawdźmy dekompozycję predykcji za pomocą LIME:

Wnioski:

Na koniec jeszcze porównamy otrzymane z LIME wyniki z Shapley Values:

Wnioski:

Część 2: Dekompozycja LIME dla różnych obserwacji w zbiorze.

Zbadamy 5 obserwacji zarówno wskazujących na występowanie choroby, jak i jej brak. Sprawdzimy czy są jakieś zmienne, które mają duży wpływ na predykcje.

Wnioski:

Część 3: Podsumowanie.